package com.xyz.entity.pojo;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class EquipmentElectricalExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public EquipmentElectricalExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Long value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Long value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Long value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Long value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Long value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Long value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Long> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Long> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Long value1, Long value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Long value1, Long value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andEmIdIsNull() {
            addCriterion("em_id is null");
            return (Criteria) this;
        }

        public Criteria andEmIdIsNotNull() {
            addCriterion("em_id is not null");
            return (Criteria) this;
        }

        public Criteria andEmIdEqualTo(Long value) {
            addCriterion("em_id =", value, "emId");
            return (Criteria) this;
        }

        public Criteria andEmIdNotEqualTo(Long value) {
            addCriterion("em_id <>", value, "emId");
            return (Criteria) this;
        }

        public Criteria andEmIdGreaterThan(Long value) {
            addCriterion("em_id >", value, "emId");
            return (Criteria) this;
        }

        public Criteria andEmIdGreaterThanOrEqualTo(Long value) {
            addCriterion("em_id >=", value, "emId");
            return (Criteria) this;
        }

        public Criteria andEmIdLessThan(Long value) {
            addCriterion("em_id <", value, "emId");
            return (Criteria) this;
        }

        public Criteria andEmIdLessThanOrEqualTo(Long value) {
            addCriterion("em_id <=", value, "emId");
            return (Criteria) this;
        }

        public Criteria andEmIdIn(List<Long> values) {
            addCriterion("em_id in", values, "emId");
            return (Criteria) this;
        }

        public Criteria andEmIdNotIn(List<Long> values) {
            addCriterion("em_id not in", values, "emId");
            return (Criteria) this;
        }

        public Criteria andEmIdBetween(Long value1, Long value2) {
            addCriterion("em_id between", value1, value2, "emId");
            return (Criteria) this;
        }

        public Criteria andEmIdNotBetween(Long value1, Long value2) {
            addCriterion("em_id not between", value1, value2, "emId");
            return (Criteria) this;
        }

        public Criteria andNameIsNull() {
            addCriterion("name is null");
            return (Criteria) this;
        }

        public Criteria andNameIsNotNull() {
            addCriterion("name is not null");
            return (Criteria) this;
        }

        public Criteria andNameEqualTo(String value) {
            addCriterion("name =", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotEqualTo(String value) {
            addCriterion("name <>", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThan(String value) {
            addCriterion("name >", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameGreaterThanOrEqualTo(String value) {
            addCriterion("name >=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThan(String value) {
            addCriterion("name <", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLessThanOrEqualTo(String value) {
            addCriterion("name <=", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameLike(String value) {
            addCriterion("name like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotLike(String value) {
            addCriterion("name not like", value, "name");
            return (Criteria) this;
        }

        public Criteria andNameIn(List<String> values) {
            addCriterion("name in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotIn(List<String> values) {
            addCriterion("name not in", values, "name");
            return (Criteria) this;
        }

        public Criteria andNameBetween(String value1, String value2) {
            addCriterion("name between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andNameNotBetween(String value1, String value2) {
            addCriterion("name not between", value1, value2, "name");
            return (Criteria) this;
        }

        public Criteria andLoadDescIsNull() {
            addCriterion("load_desc is null");
            return (Criteria) this;
        }

        public Criteria andLoadDescIsNotNull() {
            addCriterion("load_desc is not null");
            return (Criteria) this;
        }

        public Criteria andLoadDescEqualTo(String value) {
            addCriterion("load_desc =", value, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescNotEqualTo(String value) {
            addCriterion("load_desc <>", value, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescGreaterThan(String value) {
            addCriterion("load_desc >", value, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescGreaterThanOrEqualTo(String value) {
            addCriterion("load_desc >=", value, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescLessThan(String value) {
            addCriterion("load_desc <", value, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescLessThanOrEqualTo(String value) {
            addCriterion("load_desc <=", value, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescLike(String value) {
            addCriterion("load_desc like", value, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescNotLike(String value) {
            addCriterion("load_desc not like", value, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescIn(List<String> values) {
            addCriterion("load_desc in", values, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescNotIn(List<String> values) {
            addCriterion("load_desc not in", values, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescBetween(String value1, String value2) {
            addCriterion("load_desc between", value1, value2, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andLoadDescNotBetween(String value1, String value2) {
            addCriterion("load_desc not between", value1, value2, "loadDesc");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelIsNull() {
            addCriterion("instrument_model is null");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelIsNotNull() {
            addCriterion("instrument_model is not null");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelEqualTo(String value) {
            addCriterion("instrument_model =", value, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelNotEqualTo(String value) {
            addCriterion("instrument_model <>", value, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelGreaterThan(String value) {
            addCriterion("instrument_model >", value, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelGreaterThanOrEqualTo(String value) {
            addCriterion("instrument_model >=", value, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelLessThan(String value) {
            addCriterion("instrument_model <", value, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelLessThanOrEqualTo(String value) {
            addCriterion("instrument_model <=", value, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelLike(String value) {
            addCriterion("instrument_model like", value, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelNotLike(String value) {
            addCriterion("instrument_model not like", value, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelIn(List<String> values) {
            addCriterion("instrument_model in", values, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelNotIn(List<String> values) {
            addCriterion("instrument_model not in", values, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelBetween(String value1, String value2) {
            addCriterion("instrument_model between", value1, value2, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andInstrumentModelNotBetween(String value1, String value2) {
            addCriterion("instrument_model not between", value1, value2, "instrumentModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelIsNull() {
            addCriterion("continuing_model is null");
            return (Criteria) this;
        }

        public Criteria andContinuingModelIsNotNull() {
            addCriterion("continuing_model is not null");
            return (Criteria) this;
        }

        public Criteria andContinuingModelEqualTo(String value) {
            addCriterion("continuing_model =", value, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelNotEqualTo(String value) {
            addCriterion("continuing_model <>", value, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelGreaterThan(String value) {
            addCriterion("continuing_model >", value, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelGreaterThanOrEqualTo(String value) {
            addCriterion("continuing_model >=", value, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelLessThan(String value) {
            addCriterion("continuing_model <", value, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelLessThanOrEqualTo(String value) {
            addCriterion("continuing_model <=", value, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelLike(String value) {
            addCriterion("continuing_model like", value, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelNotLike(String value) {
            addCriterion("continuing_model not like", value, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelIn(List<String> values) {
            addCriterion("continuing_model in", values, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelNotIn(List<String> values) {
            addCriterion("continuing_model not in", values, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelBetween(String value1, String value2) {
            addCriterion("continuing_model between", value1, value2, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andContinuingModelNotBetween(String value1, String value2) {
            addCriterion("continuing_model not between", value1, value2, "continuingModel");
            return (Criteria) this;
        }

        public Criteria andProtectionStateIsNull() {
            addCriterion("protection_state is null");
            return (Criteria) this;
        }

        public Criteria andProtectionStateIsNotNull() {
            addCriterion("protection_state is not null");
            return (Criteria) this;
        }

        public Criteria andProtectionStateEqualTo(String value) {
            addCriterion("protection_state =", value, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateNotEqualTo(String value) {
            addCriterion("protection_state <>", value, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateGreaterThan(String value) {
            addCriterion("protection_state >", value, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateGreaterThanOrEqualTo(String value) {
            addCriterion("protection_state >=", value, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateLessThan(String value) {
            addCriterion("protection_state <", value, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateLessThanOrEqualTo(String value) {
            addCriterion("protection_state <=", value, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateLike(String value) {
            addCriterion("protection_state like", value, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateNotLike(String value) {
            addCriterion("protection_state not like", value, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateIn(List<String> values) {
            addCriterion("protection_state in", values, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateNotIn(List<String> values) {
            addCriterion("protection_state not in", values, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateBetween(String value1, String value2) {
            addCriterion("protection_state between", value1, value2, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionStateNotBetween(String value1, String value2) {
            addCriterion("protection_state not between", value1, value2, "protectionState");
            return (Criteria) this;
        }

        public Criteria andProtectionNameIsNull() {
            addCriterion("protection_name is null");
            return (Criteria) this;
        }

        public Criteria andProtectionNameIsNotNull() {
            addCriterion("protection_name is not null");
            return (Criteria) this;
        }

        public Criteria andProtectionNameEqualTo(String value) {
            addCriterion("protection_name =", value, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameNotEqualTo(String value) {
            addCriterion("protection_name <>", value, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameGreaterThan(String value) {
            addCriterion("protection_name >", value, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameGreaterThanOrEqualTo(String value) {
            addCriterion("protection_name >=", value, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameLessThan(String value) {
            addCriterion("protection_name <", value, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameLessThanOrEqualTo(String value) {
            addCriterion("protection_name <=", value, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameLike(String value) {
            addCriterion("protection_name like", value, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameNotLike(String value) {
            addCriterion("protection_name not like", value, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameIn(List<String> values) {
            addCriterion("protection_name in", values, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameNotIn(List<String> values) {
            addCriterion("protection_name not in", values, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameBetween(String value1, String value2) {
            addCriterion("protection_name between", value1, value2, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionNameNotBetween(String value1, String value2) {
            addCriterion("protection_name not between", value1, value2, "protectionName");
            return (Criteria) this;
        }

        public Criteria andProtectionValueIsNull() {
            addCriterion("protection_value is null");
            return (Criteria) this;
        }

        public Criteria andProtectionValueIsNotNull() {
            addCriterion("protection_value is not null");
            return (Criteria) this;
        }

        public Criteria andProtectionValueEqualTo(String value) {
            addCriterion("protection_value =", value, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueNotEqualTo(String value) {
            addCriterion("protection_value <>", value, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueGreaterThan(String value) {
            addCriterion("protection_value >", value, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueGreaterThanOrEqualTo(String value) {
            addCriterion("protection_value >=", value, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueLessThan(String value) {
            addCriterion("protection_value <", value, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueLessThanOrEqualTo(String value) {
            addCriterion("protection_value <=", value, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueLike(String value) {
            addCriterion("protection_value like", value, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueNotLike(String value) {
            addCriterion("protection_value not like", value, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueIn(List<String> values) {
            addCriterion("protection_value in", values, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueNotIn(List<String> values) {
            addCriterion("protection_value not in", values, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueBetween(String value1, String value2) {
            addCriterion("protection_value between", value1, value2, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andProtectionValueNotBetween(String value1, String value2) {
            addCriterion("protection_value not between", value1, value2, "protectionValue");
            return (Criteria) this;
        }

        public Criteria andCtIsNull() {
            addCriterion("ct is null");
            return (Criteria) this;
        }

        public Criteria andCtIsNotNull() {
            addCriterion("ct is not null");
            return (Criteria) this;
        }

        public Criteria andCtEqualTo(String value) {
            addCriterion("ct =", value, "ct");
            return (Criteria) this;
        }

        public Criteria andCtNotEqualTo(String value) {
            addCriterion("ct <>", value, "ct");
            return (Criteria) this;
        }

        public Criteria andCtGreaterThan(String value) {
            addCriterion("ct >", value, "ct");
            return (Criteria) this;
        }

        public Criteria andCtGreaterThanOrEqualTo(String value) {
            addCriterion("ct >=", value, "ct");
            return (Criteria) this;
        }

        public Criteria andCtLessThan(String value) {
            addCriterion("ct <", value, "ct");
            return (Criteria) this;
        }

        public Criteria andCtLessThanOrEqualTo(String value) {
            addCriterion("ct <=", value, "ct");
            return (Criteria) this;
        }

        public Criteria andCtLike(String value) {
            addCriterion("ct like", value, "ct");
            return (Criteria) this;
        }

        public Criteria andCtNotLike(String value) {
            addCriterion("ct not like", value, "ct");
            return (Criteria) this;
        }

        public Criteria andCtIn(List<String> values) {
            addCriterion("ct in", values, "ct");
            return (Criteria) this;
        }

        public Criteria andCtNotIn(List<String> values) {
            addCriterion("ct not in", values, "ct");
            return (Criteria) this;
        }

        public Criteria andCtBetween(String value1, String value2) {
            addCriterion("ct between", value1, value2, "ct");
            return (Criteria) this;
        }

        public Criteria andCtNotBetween(String value1, String value2) {
            addCriterion("ct not between", value1, value2, "ct");
            return (Criteria) this;
        }

        public Criteria andCableModelIsNull() {
            addCriterion("cable_model is null");
            return (Criteria) this;
        }

        public Criteria andCableModelIsNotNull() {
            addCriterion("cable_model is not null");
            return (Criteria) this;
        }

        public Criteria andCableModelEqualTo(String value) {
            addCriterion("cable_model =", value, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelNotEqualTo(String value) {
            addCriterion("cable_model <>", value, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelGreaterThan(String value) {
            addCriterion("cable_model >", value, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelGreaterThanOrEqualTo(String value) {
            addCriterion("cable_model >=", value, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelLessThan(String value) {
            addCriterion("cable_model <", value, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelLessThanOrEqualTo(String value) {
            addCriterion("cable_model <=", value, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelLike(String value) {
            addCriterion("cable_model like", value, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelNotLike(String value) {
            addCriterion("cable_model not like", value, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelIn(List<String> values) {
            addCriterion("cable_model in", values, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelNotIn(List<String> values) {
            addCriterion("cable_model not in", values, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelBetween(String value1, String value2) {
            addCriterion("cable_model between", value1, value2, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCableModelNotBetween(String value1, String value2) {
            addCriterion("cable_model not between", value1, value2, "cableModel");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNull() {
            addCriterion("create_time is null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIsNotNull() {
            addCriterion("create_time is not null");
            return (Criteria) this;
        }

        public Criteria andCreateTimeEqualTo(Date value) {
            addCriterion("create_time =", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotEqualTo(Date value) {
            addCriterion("create_time <>", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThan(Date value) {
            addCriterion("create_time >", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeGreaterThanOrEqualTo(Date value) {
            addCriterion("create_time >=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThan(Date value) {
            addCriterion("create_time <", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeLessThanOrEqualTo(Date value) {
            addCriterion("create_time <=", value, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeIn(List<Date> values) {
            addCriterion("create_time in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotIn(List<Date> values) {
            addCriterion("create_time not in", values, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeBetween(Date value1, Date value2) {
            addCriterion("create_time between", value1, value2, "createTime");
            return (Criteria) this;
        }

        public Criteria andCreateTimeNotBetween(Date value1, Date value2) {
            addCriterion("create_time not between", value1, value2, "createTime");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}